//实现图片的异步上传
function upload(e) {
    //阻止button按钮的表单默认提交行为
    e.preventDefault();
    //获取文件上传对象
    let files=$('#file')[0].files;
    //判断
    //1.必须要选择文件才能进行上传
    if(files.length==0){
        return alert('请先选择文件再上传');
    }
    //获取上传的文件信息
    let file=files[0];
    //2.要求上传的文件必须是图片格式
    let allow_upload_file_types=['image/png','image/jpeg','image/gif'];
    if( !allow_upload_file_types.includes(file.type)){
        return alert('请选择图片格式再上传');
    }

     //因为要发送的数据是文件流对象，不能使用传统的ajax发送文本数据的方法进行发送
    //利用表单的 formData对象来发送文件流数据
     //创建对象
     let formData=new FormData();
     //把文件对象追加到formData对象中
     formData.append('file',file);
     //发送ajax请求
     $.ajax({
         url:'upload',
         type:'post',
         //要发送的数据
         data:formData,
         //任何一个对象都会处理转化成一个查询字符串（默认为ture）,我们这块要传递的就是文件对象
         processData: false,
         //默认: "application/x-www-form-urlencoded") 发送信息至服务器时内容编码类型，此处是发送文件对象
         contentType:false,
         success(res) {
            if(res.code==0){
                 //上传成功
                let filename=res.data;
                //显示预览图片
                $('#preview').attr('src',filename).show();
                //给表单的隐藏域赋值
                $('input[name=pic_url]').val(filename);
            }else{
                alert('上传失败,失败原因是:'+res.data);
            }
         }
     })

    console.log(file);


}
//实现数据的验证并提交表单
function add(e) {
    //阻止表单提交按钮的默认提交行为
    e.preventDefault();
    //接收表单数据
    let title=$('input[name=title]').val();
    let author=$('input[name=author]').val();
    let pic_url=$('input[name=pic_url]').val();
    let content=$('textarea[name=content]').val();
    //进行数据的验证
    if(title==''){
        //$('input[name=title]').css('border','3px solid red');
        return alert('新闻标题必填');
    }
    if(pic_url==''){
        return alert('新闻图片必填上传');
    }
    if(content==''){
        return alert('新闻内容必填');
    }
    if(author==''){
        return alert('新闻编辑必填');
    }
    //只有等数据完成了验证之后才用表单对象的submit()进行表单提交
    $('#login')[0].submit();
}

